#ifndef __ZLMEDIAZ_H__Z_
#define __ZLMEDIAZ_H__Z_

#include <string>
using namespace std;

class InterfaceMediaz {
public:
    InterfaceMediaz(const InterfaceMediaz &) = delete;
    InterfaceMediaz &operator=(const InterfaceMediaz &) = delete;
    static InterfaceMediaz &Instance(); // 单例
protected:
    InterfaceMediaz();

public:
    // 初始化库
    virtual bool InitLib() = 0;
    virtual void addStreamProxy(const string &app, const string &stream, const string &url) = 0;
    virtual void startSendRtp(
        const string &app, const string &stream, const string &ssrc, const string &dst_url, const string &dst_port, const string &src_port,
        const string &is_udp)
        = 0;
    virtual void stopSendRtp(const string &app, const string &stream) = 0;
};

#endif // __ZLMEDIAZ_H__Z_